package com.ocom.payconfig.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ocom.common.entity.human.EntityPersonnelInfo;
import com.ocom.common.request.payconfig.AddSubsidyDataResquest;
import com.ocom.common.request.payconfig.NotMealRequest;
import com.ocom.common.vo.payconfig.NotMealVo;
import icu.mhb.mybatisplus.plugln.base.service.JoinIService;

import java.util.List;
import java.util.Map;


public interface PersonnelInfoService extends JoinIService<EntityPersonnelInfo> {

    EntityPersonnelInfo getOnePersonInfo(Long comId, String pCode, String pName);

    EntityPersonnelInfo getOnePersonInfo(Long comId, Long pId);

    List<EntityPersonnelInfo> selectPerson(Long comId, AddSubsidyDataResquest addSubsidyDataResquest);

    List<EntityPersonnelInfo> selectPersonVo(Long comId, AddSubsidyDataResquest addSubsidyDataResquest);

    List<EntityPersonnelInfo> selectPersonAndAccount(Long comId, List<Integer> accType, List<String> deptIdList, List<String> pTags);

    EntityPersonnelInfo getDataByPerson(Long comId, String pCode);

    List<EntityPersonnelInfo> selectPerson(Long comId, String pCode, String pName);

    List<Map<String, Object>> selectPersonByFee(Long comId, int deptId, String pCode, String pName );

    EntityPersonnelInfo selectPersonByPCode(Long comId, String pCode);

    List<EntityPersonnelInfo> totalNumberPerson(Long comId);

    public Page<NotMealVo> getMealPerReports(Long companyId, NotMealRequest request);
}
